﻿
using System.Runtime.Serialization;

namespace Clarendon.AzureBilling.Library
{
    /// <summary>
    /// Contains the necessary properties to support a hosted service and map onto the XML of the same
    /// </summary>
    [DataContract]
    public class RoleInstance
    {
        /// <summary>
        /// Default constructor with name
        /// </summary>
        public RoleInstance(string name)
        {
            RoleName = name;
        }

        /// <summary>
        /// Default constructor 
        /// </summary>
        public RoleInstance()
        {
        }

        /// <summary>
        /// This is the name of the role per the deployment
        /// </summary>
        [DataMember]
        public string RoleName { get; set; }
        /// <summary>
        /// This is the name of the particular instance - normally a concatenation of things given by the Fabric
        /// </summary>
        [DataMember]
        public string InstanceName { get; set; }
        /// <summary>
        /// The VM Size of the role - will be used to calculate the cost basis
        /// </summary>
        [DataMember]
        public string VmSize { get; set; }
        /// <summary>
        /// The status of the instance - whether it is stopped/started or what 
        /// </summary>
        [DataMember]
        public string InstanceStatus { get; set; }
       
    }
}
